package com.tao.YanMoDesignPattern.Strategy.case3_withTemplate;


import java.text.DateFormat;
import java.time.LocalDateTime;

/**
 * @Author Mi_Tao
 * @Date 2023/7/22
 * @Description
 * @Version 1.0
 **/
public abstract class LogStategyTemplate implements LogStrategy {

    public final void log(String msg){
        // 第一步，为日志添加时间
        LocalDateTime now = LocalDateTime.now();
        msg = now+" 内容是: "+msg;

        // 第二步，真正执行日志记录
        doLog(msg);
    }

    /**
     * 真正折行日志记录，让子类去具体实现
     *
     * @param msg 需要记录的日志信息
     */
    protected abstract void doLog(String msg);
}
